Technical Field
This invention relates to data processing systems that define product offerings for a customer. In particular, this invention relates to a flexible building block system for defining and modifying the products that a service provider offers to a customer.
Background Information
Past approaches to determining what products were available to a customer relied upon inflexible hardcoded processing steps, databases, and other data structures. While the product definition database might have statically defined the products that were available at the time that the database was created, its hardcoded nature made the product definitions inflexible and often inaccurate as time went by. Expensive and time consuming re-programming processes ensued through which a software vendor manually updated the databases and programs to suit ever-changing product availabilities for service providers such as the cable TV industry.
Even if a service provider was willing to incur the re-programming expense and delay, there were other drawbacks. With every custom system release came the need for individuals to track, understand, and support the system. The past approaches increased the costs for the software and system vendor as well as the service provider and also complicated the introduction of new products, pricings, and discounts for service provider customers.
A need has long existed for addressing the problems noted above and others previously experienced.